package ru.edu.niimm.mapping.linguistic;

import java.util.List;
import java.util.ArrayList;

/**

 */
public class ThesTemplates
{

    /**
    * Сущ. + Сущ. в род. падеже
    */
    public static final Template t1 = t1();

    public static Template t1()
    {
        GramUnit gu1 = new GramUnit("С", "", true);
        GramUnit gu2 = new GramUnit("С", "рд", false);
        List<GramUnit> list = new ArrayList<GramUnit>();
        list.add(gu1);
        list.add(gu2);
        return new Template(2, list);

    }

    /**
    * Сущ.
    */
    public static final Template t2 = t2();

    public static Template t2()
    {
        GramUnit gu1 = new GramUnit("С", "", true);
        List<GramUnit> list = new ArrayList<GramUnit>();
        list.add(gu1);
        return new Template(1, list);

    }

    /**
    * Прил.
    */
    public static final Template t5 = t5();

    public static Template t5()
    {
        GramUnit gu1 = new GramUnit("П", "", true);
        List<GramUnit> list = new ArrayList<GramUnit>();
        list.add(gu1);
        return new Template(1, list);

    }

    /**
    * Сущ. + Прил.
    */
    public static final Template t3 = t3();

    public static Template t3()
    {
        GramUnit gu1 = new GramUnit("С", "", true);
        GramUnit gu2 = new GramUnit("П", "", false);
        List<GramUnit> list = new ArrayList<GramUnit>();
        list.add(gu1);
        list.add(gu2);
        return new Template(2, list);


    }

    /**
    * Сущ. + Прич.
    */
    public static final Template t4 = t4();

    public static Template t4()
    {
        GramUnit gu1 = new GramUnit("С", "", true);
        GramUnit gu2 = new GramUnit("ПР", "", false);
        List<GramUnit> list = new ArrayList<GramUnit>();
        list.add(gu1);
        list.add(gu2);
        return new Template(2, list);


    }

   /**
    * Сущ. в им. падеже + Сущ. в род. падеже + Сущ. в род. падеже
    */
   public static final Template t3words = t3words();

    public static Template t3words()
    {
        GramUnit gu1 = new GramUnit("С", "им", true);
        GramUnit gu2 = new GramUnit("С", "рд", false);
        GramUnit gu3 = new GramUnit("С", "рд", false);
        List<GramUnit> list = new ArrayList<GramUnit>();
        list.add(gu1);
        list.add(gu2);
        list.add(gu3);
        return new Template(3, list);

    }

    public static final Template t3SPS = t3SPS();

    public static Template t3SPS()
    {
        GramUnit gu1 = new GramUnit("С", "им", true);
        GramUnit gu2 = new GramUnit("П", "рд", false);
        GramUnit gu3 = new GramUnit("С", "рд", false);
        List<GramUnit> list = new ArrayList<GramUnit>();
        list.add(gu1);
        list.add(gu2);
        list.add(gu3);
        return new Template(3, list);

    }

    public static final Template t3S_predl_S = t3S_predl_S();

    public static Template t3S_predl_S()
    {
        GramUnit gu1 = new GramUnit("С", "им", true);
        GramUnit gu3 = new GramUnit("С", "тв", false);
        List<GramUnit> list = new ArrayList<GramUnit>();
        list.add(gu1);
        //list.add(gu2);
        list.add(gu3);
        return new Template(2, list);

    }

    /**
    * Прил.
    */
    public static final Template dyyyy = d1();

    public static Template d1()
    {
        GramUnit gu1 = new GramUnit("YYYY", "", true);
        List<GramUnit> list = new ArrayList<GramUnit>();
        list.add(gu1);
        return new Template(1, list);

    }

    public static final Template century = cent1();

    public static Template cent1()
    {
        GramUnit gu1 = new GramUnit("XX", "", true);
        List<GramUnit> list = new ArrayList<GramUnit>();
        list.add(gu1);
        return new Template(1, list);

    }
}
